<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <title>向量的相关性与线性方程组</title>
    <meta charset="utf-8" />
    <link rel="stylesheet" type="text/css" href="../../css/note.css" />
</head>
<body>

<p>	我们从第一节的 `n` 元向量的线性相关性入手, 在第二节引入矩阵的秩,
	最终在第三节得出结论.
</p>

<h2>`bm n` 元向量的线性相关性与方程组的求解问题</h2>

<h3>`bm n` 元向量, 线性相关与线性无关</h3>

<p class="definition">
	仅考虑加法和数乘时, 我们不区分 `n` 元列向量与它的转置,
	将 `n` 元列向量与 `n` 元行向量统称为 <b>`bm n` 元向量</b>.
	数域 `bbb P` 上 `n` 元向量的全体记为 `bbb P^n`,
	把 `bbb P^n` 连同其上的加法和数乘 `(bbb P^n, +, *)` 称为
	`bbb P` 上的 <b>`bm n` 元向量空间</b>.  特别 `bbb P = RR (CC)` 时,
	称为 <b>`bm n` 元实 (复) 向量空间</b>.
</p>

<p class="remark">
	`n` 元向量空间是后面更一般的线性空间的一个例子.
	事实上, `bbb P` 上的任意 `n` 维线性空间同构于 `bbb P^n`,
	因此本章中许多 `bbb P^n` 中的概念, 如向量的线性相关性, 向量组的秩等,
	都可以平行推广到线性空间中.
</p>

<p class="definition">
	设 `bm beta, bm alpha_1, bm alpha_2, cdots, bm alpha_s in bbb P^n`,
	`s ge 1`. 若存在 `k_1, k_2, cdots, k_s in bbb P`, 使得
	<span class="formula">
		`sum_(i=1)^s k_i bm alpha_i = bm beta`,
	</span>
	则称 `bm beta` 可被 `bm alpha_1, bm alpha_2, cdots, bm alpha_s`
	<b>线性表出</b>, 或 `bm beta` 为 `bm alpha_1, bm alpha_2, cdots, bm
	alpha_s` 的<b>线性组合</b>.
	将 `bbb P^n` 中全体可被 `bm alpha_1, bm alpha_2, cdots, bm alpha_s`
	线性表出的向量记为 `"G"[bm alpha_1, bm alpha_2, cdots, bm alpha_s]`,
	则 `bm beta in "G"[bm alpha_1, bm alpha_2, cdots, bm alpha_s]`.
</p>

<p class="definition">
	设 `s ge 1`, 称向量组 `bm alpha_1, bm alpha_2, cdots, bm alpha_s in
	bbb P^n` <b>线性相关</b>, 如果存在不全为零的 `s` 个数 `k_1, k_2,
	cdots, k_s in bbb P`, 使得零向量为该向量组的线性组合, 即
	<span class="formula">
		`sum_(i=1)^s k_i bm alpha_i = bm theta`.
	</span>
	否则, 称该向量组<b>线性无关</b>, 即, 如果有 `s` 个数 `k_1, k_2, cdots,
	k_s in bbb P` 使得上式成立, 则 `k_1 = k_2 = cdots = k_s = 0`.
</p>

<ol class="corollary" id="cor-linear-dependent-and-equations">
	设 `bm A in bbb P^(m xx n)`, `bm X in bbb P^n`, `bm B in bbb P^m`.
	记 `bm A` 的各列向量为 `bm(A epsi)_j`, `j = 1, 2, cdots, n`,
	`bm epsi_j` 是单位列向量.  则
	<li>线性方程组 `bm (AX) = bm B` 有解当且仅当 `bm B in "G"[bm(A
		epsi)_1, cdots, bm(A epsi)_n]`.
	</li>
	<li>齐次方程组 `bm (AX) = bb 0` 有非零解当且仅当
		`bm (A epsi_j)` (`j = 1, 2, cdots, n`) 线性相关.
	</li>
	<li>进一步设 `m = n`, 联系 Cramer 法则一节的<a
		href="2.html#the-homogeneous-nonzero-solution-iff">这个定理</a>,
		`|bm A| = 0` 当且仅当 `bm (A epsi_j)` (`j = 1, 2, cdots, n`)
		线性相关.  特别取 `bm A = bm E` 知,
		`bm epsi_1, bm epsi_2, cdots, bm epsi_n` 线性无关.
	</li>
</ol>

<ol class="corollary" id="cor-linear-dependence-on-variation">
	<li><b>加列仍线性相关</b>
		若 `bm alpha_1, bm alpha_2, cdots, bm alpha_s in bbb P^n`
		线性相关, `bm alpha_(s+1) in bbb P^n`, 则 `bm alpha_1, bm alpha_2,
		cdots, bm alpha_(s+1)` 线性相关. 用方程组的语言, 就是
		<span class="formula">
			`(AA bm X != bb 0)`
			`bm (AX) = bb 0`
			`rArr`
			`(bm A, bm B) [bm X;bb 0] = bb 0`.
		</span>
		这指出, 若向量组的一个<b>部分组</b>线性相关,
		则整个向量组线性相关.  换言之, 若向量组线性无关,
		则它的任意部分组线性无关.
	</li>
	<li><b>降维仍线性相关</b>
		设 `bm alpha_i = (a_(i1), a_(i2), cdots, a_(i n)) in bbb P^n`,
		`i = 1, 2, cdots, s` 线性相关, 则
		`bm bar alpha_i = (a_(i1), a_(i2), cdots, a_(i,n-1)) in bbb
		P^(n-1)`, `i = 1, 2, cdots, s` 线性相关.  用方程组的语言, 就是
		<span class="formula">
			`(AA bm X != bb 0)`
			`[bm A;bm B] bm X = [bb 0;bb 0]`
			`rArr`
			`bm (AX) = bb 0`.
		</span>
		这指出, 若向量组线性相关, 则由它的部分分量组成的向量组皆线性相关.
		换言之, 若向量组的某些部分分量组成的向量组线性无关,
		则整个向量组线性无关.
	</li>
</ol>

<ol class="theorem" id="the-linear-dependent-iff">
	`bm alpha_1, bm alpha_2, cdots, bm alpha_s in bbb P^n`
	线性相关当且仅当
	<li>`s = 1` 时, `bm alpha_1 = bm theta`;</li>
	<li>`s ge 2` 时, 存在 `1 le i le s` 使得 `bm alpha_i` 为
		其余 `s-1` 个向量的线性组合.
	</li>
</ol>

<ol class="proof">
	<li>`s = 1` 时, 若 `bm alpha_1 = bm theta`, 任取 `k_1 in bbb P\\{0}`,
		就有 `k_1 bm alpha_1 = bm theta` 成立, 即 `bm alpha_1` 线性相关.
		反之若 `bm alpha_1` 线性相关, 由定义知存在 `k_1 in bbb P\\{0}`
		使得 `k_1 bm alpha_1 = bm theta`, 两边同乘 `k_1^-1` 得 `bm
		alpha_1 = bm theta`.
	</li>
	<li>`s ge 2` 时, 若存在 `k_j in bbb P`, `j = 1, 2, cdots, s`, `j != i`
		使得
		<span class="formula">
			`sum_(j=1, j!=i)^s k_j bm alpha_j = bm alpha_i`,
		</span>
		令 `k_i = -1 != 0`, 则
		<span class="formula">
			`sum_(j=1)^s k_j bm alpha_j = bm theta`,
		</span>
		故 `bm alpha_1, bm alpha_2, cdots, bm alpha_s` 线性相关.
		反之, 若 `bm alpha_1, bm alpha_2, cdots, bm alpha_s` 线性相关,
		则存在不全为零的 `k_j in bbb P`, `j = 1, 2, cdots, s` 使得
		<span class="formula">
			`sum_(j=1)^s k_j bm alpha_j = bm theta`,
		</span>
		不妨设 `k_i != 0`, `1 le i le s`, 于是
		<span class="formula">
			`bm alpha_i = -k_i^-1 sum_(j=1,j!=i)^s k_j bm alpha_j`,
		</span>
		即 `bm alpha_i` 是其它 `s-1` 个向量的线性组合.
	</li>
</ol>

<p class="theorem" id="the-uniqueness-of-linear-presentation">
	设 `bm beta in bbb P^n` 可被 `bm alpha_1, bm alpha_2, cdots, bm
	alpha_s in bbb P^n` 线性表出,
	则向量组 `bm alpha_1, bm alpha_2, cdots, bm alpha_s`
	线性无关当且仅当该表出方式唯一.
</p>

<ol class="proof">
	<li>先设 `bm alpha_1, bm alpha_2, cdots, bm alpha_s` 线性无关,
		`bm beta = sum_(i=1)^s k_i bm alpha_i = sum_(i=1)^s l_i bm
		alpha_i`, 则 `sum_(i=1)^s (k_i - l_i) bm alpha_i = bm theta`.
		由线性无关性知 `k_i = l_i`, `i = 1, 2, cdots, s`.
	</li>
	<li>反之设 `bm beta = sum_(i=1)^s k_i
		bm alpha_i` 是唯一的表出方式. 又设 `sum_(i=1)^s l_i bm alpha_i =
		bm theta`, 则 `bm beta = sum_(i=1)^s (k_i + l_i) bm alpha_i`,
		由表出方式唯一知 `l_i = 0`, `i = 1, 2, cdots, s`, 即 `bm alpha_1,
		bm alpha_2, cdots, bm alpha_s` 线性无关.
	</li>
</ol>

<p class="remark">
	上述定理可以作为线性相关 (无关) 的等价定义.
	事实上, 我们正是以零向量被一个向量组线性表出方式的唯一性 (不唯一性)
	来定义该向量组的线性无关 (相关) 的 (零向量是能被任意向量表示的向量).
</p>

<h3>极大线性无关组, 向量组的秩</h3>

<p class="definition">
	设 `S, T sube bbb P^n` 是两个向量族
	(这里的 `S, T` 未必只有有限个向量, 且与集合定义不同,
	我们允许向量族中的元素重复).
	如果 `S` 中每一向量可被 `T` 中的向量线性表出, 即 `S sube "G"[T]`,
	则称向量族 `S` 可被 `T` <b>线性表出</b>.
	显然若 `S sube T`, 则 `S sube "G"[T]`.
	<br/>
	如果恰有 `S = "G"[T]`, 则称 `T` 为 `S` 的<b>生成集</b>;
	特别当 `T` 只有有限个向量时, 称为 `S` 的<b>生成向量组</b>.<br/>
	称两向量族<b>等价</b>, 如果它们可以互相表出.
	向量族的等价是一等价关系, 向量族之间的线性表出是一偏序关系.
</p>

<ol class="theorem">
	<b>替换定理</b>
	设 `"I": bm alpha_1, bm alpha_2, cdots, bm alpha_s in bbb P^n`
	线性无关, 且可被 `"II": bm beta_1, bm beta_2, cdots, bm beta_t in bbb
	P^n` 线性表出, 则
	<li>`s le t`; 这表明 `t` 个向量能线性表出的线性无关向量的个数不超过
		`t`.
	</li>
	<li>`"II"` 在适当重排后, 与向量组
			`"III": bm alpha_1, bm alpha_2, cdots, bm alpha_s, bm
			beta_(s+1), cdots, bm beta_t`
		等价. 换言之, 用向量组 `"I"` 中的向量替换 `"II"` 中的 `s`
		个向量后所得的向量组仍与 `"II"` 等价. 特别若 `s = t`, 则 `"I"`
		与 `"II"` 等价.
	</li>
</ol>

<ol class="proof">
	<li>对 `t` 使用数学归纳法. 当 `t = 1` 时, 若有 `s gt t`, 则 `s ge 2`.
		这时存在 `k_1, k_2 in bbb P`, 使得
		`bm alpha_i = k_i bm beta_1`, `i = 1, 2`.
		由于 `bm alpha_1, bm alpha_2` 线性无关, 有 `bm alpha_1, bm alpha_2
		!= bm theta`, 所以 `k_1, k_2 != 0`. 但
		<span class="formula">
			`k_2 bm alpha_1 - k_1 bm alpha_2 = bm theta`,
		</span>
		所以 `bm alpha_1, bm alpha_2` 线性相关, 矛盾. 故 `s le t`.
		<br/>
		今假设定理对于 `t-1 ge 1` 成立, 考查 `t` 时的情形, 设
		<span class="formula">
			`bm alpha_i = sum_(j=1)^t k_(ij) bm beta_j`,
			`i = 1, 2, cdots, s`.
		</span>
		若 `k_(it) = 0`, `i = 1, 2, cdots, s`, 则
		<span class="formula">
			`bm alpha_i = sum_(j=1)^(t-1) k_(ij) bm beta_j`,
			`i = 1, 2, cdots, s`.
		</span>
		各个 `bm alpha_i` 已经被 `t-1` 个向量线性表出, 由归纳假设,
		`s le t-1 lt t`, 定理成立.
		<br/>
		若存在一个 `1 le m le s`, 使得 `k_(mt) != 0`, 不妨设 `m = s`,
		令
		<span class="formula">
			`"IV": bm gamma_i = bm alpha_i - k_(it)/k_(st) bm alpha_s`,
			`i = 1, 2, cdots, s-1`,
		</span>
		则 `"IV"` 可由 `"I"` 线性表出; 由向量组线性表出的传递性, `"IV"`
		也可由 `"II"` 线性表出, 且 `bm beta_t` 的系数 `k_(it) -
		k_(it)/k_(st) * k_(st) = 0`, 这表明 `"IV"` 可以仅由 `"II"` 的前
		`t-1` 个向量线性表出.
		<br/>
		我们证明 `"IV"` 线性无关. 事实上, 若存在
		`l_i in bbb P`, `i = 1, 2, cdots, s-1`, 使得
		<span class="formula">
			`sum_(i=1)^(s-1) l_i bm gamma_i = bm theta`,
		</span>
		那么
		<span class="formula">
			`sum_(i=1)^(s-1) l_i bm alpha_i - (sum_(i=1)^(s-1) l_i
			k_(it)/k_(st) ) bm alpha_s = bm theta`.
		</span>
		由 `"I"` 线性无关得 `l_i = 0`, `i = 1, 2, cdots, s-1`,
		于是 `"III"` 线性无关.
		由归纳假设, `s-1 le t-1`, 即 `s le t`.
	</li>
	<li>只需证明 `"III"` 能线性表出 `"II"`, 而这只需证明 `"III"`
		能线性表出 `bm beta_i`, `i = 1, 2, cdots, s`.
		对 `s` 使用数学归纳法, 当 `s = 1` 时, 设
		<span class="formula">
			`bm alpha_1 = sum_(j=1)^t k_j bm beta_j`,
		</span>
		适当排列 `"II"` 使 `k_1 != 0`, 则
		<span class="formula">
			`bm beta_1 = k_1^-1 bm alpha_1 - k_1^-1 sum_(j=2)^t k_j bm
			beta_j`.
		</span>
		设定理对 `s-1 ge 1` 成立, 考察 `s` 的情形, 设
		<span class="formula">
			`bm alpha_s = sum_(j=1)^t l_j bm beta_j = sum_(j=1)^(s-1) m_j
			bm alpha_j + sum_(j=s)^t m_j bm beta_j`,
		</span>
		其中 `m_s, m_(s+1), cdots, m_t` 不全为零, 适当排列使 `m_s != 0`,
		于是 `"III"` 能线性表出 `bm beta_s`, 进而线性表出 `bm alpha_1,
		cdots, bm alpha_(s-1), bm beta_s, cdots, bm beta_t`,
		进而由归纳假设, 线性表出 `"II"`.
	</li>
</ol>

<p class="corollary">
	在替换定理中取 `"II"` 为 `n` 元单位向量组, 得到:
	`bbb P^n` 中任意线性无关向量组含向量的个数不超过 `n`.
</p>

<p class="corollary" id="cor-vector-group-eq">
	设 `bm alpha_1, bm alpha_2, cdots, bm alpha_s in bbb P^n` 和 `bm
	beta_1, bm beta_2, cdots, bm beta_t in bbb P^n` 等价且各自线性无关,
	则 `s = t`.
</p>

<p class="definition">
	设 `bm alpha_1, bm alpha_2, cdots, bm alpha_r in S sube bbb P^n`.
	称 `bm alpha_1, bm alpha_2, cdots, bm alpha_r` 为向量族 `S`
	的一个<b>极大线性无关组</b>, 或简称<b>极大无关组</b>, 如果它线性无关,
	且与 `S` 等价. 即极大线性无关组是能够表出 `S` 中任意向量的无关向量组.
</p>

<p class="corollary">
	由<a class="ref" href="#the-uniqueness-of-linear-presentation"></a>,
	`S` 中任意向量被它的极大无关组线性表示的方式是唯一的.
</p>

<p class="corollary">
	极大无关组具有传递性. 若 `"I"` 为 `"II"` 的极大无关组, 而 `"II"`
	为向量族 `S` 的极大无关组, 则 `"I"` 也是 `S` 的极大无关组.
</p>

<ol class="corollary" id="cor-maximal-linear-independent-group-property">
	联系<a class="ref" href="#the-linear-dependent-iff"></a>有:
	<li><b>再多一个, 线性相关.</b>
		向 `S` 的极大线性无关组 `"I"` 中再加入一个 `S` 中的向量,
		则该向量可由 `"I"` 线性表出, 故 `"I"` 并上此向量后线性相关.
	</li>
	<li><b>再少一个, 不足表出 `S`.</b>
		从 `S` 的极大线性无关组 `"I"` 中剔除一个向量, 则由 `"I"`
		线性无关知, 该向量不能由 `"I"` 中剩余的向量线性表出.
		从而剩余的向量不足以线性表出 `S`.
	</li>
</ol>

<p class="lemma" id="lem-add-vector">
	设 `"I": bm alpha_1, bm alpha_2, cdots, bm alpha_s` 线性无关, 则
	`bm alpha_1, bm alpha_2, cdots, bm alpha_(s+1)` 线性无关当且仅当
	`bm alpha_(s+1)` 不是 `"I"` 的线性组合.
	从而由数学归纳法知道,
	`bm alpha_1, bm alpha_2, cdots, bm alpha_s in bbb P^n`
	线性无关当且仅当
	`bm alpha_1 != bm theta`, 且对任意 `i = 2, 3, cdots, s`, `bm alpha_i`
	不是 `bm alpha_1, bm alpha_2, cdots, bm alpha_(i-1)` 的线性组合.
</p>

<p class="proof">
	`rArr`:
	由<a class="ref" href="#the-linear-dependent-iff"></a>显然.
	`lArr`: 设存在 `k_i in bbb P^n`, `i = 1, 2, cdots, s+1` 使得
	<span class="formula">
		`sum_(i=1)^(s+1) k_i bm alpha_i = bm theta`.
	</span>
	由 `bm alpha_(s+1)` 不是 `"I"` 的线性组合知 `k_(s+1) = 0`.
	再由 `"I"` 线性无关, `k_1 = k_2 = cdots = k_s = 0`. 于是
	`bm alpha_1, bm alpha_2, cdots, bm alpha_(s+1)` 线性无关.
</p>

<p class="theorem">
	<b>扩充定理</b>
	令 `"I": bm alpha_1, bm alpha_2, cdots, bm alpha_s in bbb P^n`,
	若 `{bm alpha_i}_(i=1)^h` 线性无关, 但不构成 `"I"` 的极大无关组,
	则可以从余下的 `s-h` 个向量 `bm alpha_(h+1), cdots, bm
	alpha_s` 中选取若干向量, 使 `{bm alpha_i}_(i=1)^h`
	与这些向量一起构成 `"I"` 的一个极大线性无关组.
	换言之, 任意无关向量组可以扩充为极大线性无关组.
</p>

<p class="proof">
	因为 `{bm alpha_i}_(i=1)^h` 线性无关, 但不构成 `"I"` 的极大无关组,
	由定义知存在 `bm beta in {bm alpha_(h+1), cdots, bm alpha_s}`,
	且 `bm beta` 不能被 `{bm alpha_i}_(i=1)^h` 线性表出.
	从而由<a class="ref" href="#lem-add-vector"></a>知
	`bm alpha_1, cdots, bm alpha_h, bm beta` 线性无关.
	由于 `s` 为有限数, 这一操作不可能无限进行下去, 所以最终我们将获得
	`"I"` 的一个极大无关组.
</p>

<p class="definition">
	令 `"I": bm alpha_1, bm alpha_2, cdots, bm alpha_s` 是 `bbb P^n`
	中不全为零的向量组. 由扩充定理知, `"I"` 中存在极大无关组.
	再由<a class="ref" href="#cor-vector-group-eq"></a>知,
	`"I"` 中所有极大无关组所含向量个数是相等的.
	这个非负整数只与 `"I"` 有关, 而与极大无关组的选取无关, 称为
	`"I"` 的<b>秩</b>, 记为 `r_"I"` 或 `r_({bm alpha_i}_(i=1)^s)`.
	约定全由零向量组成的向量组的秩为 `0`.
</p>

<ol class="corollary" id="cor-rank-and-equality">
	<li>由替换定理, 若向量组 `"I"` 能由 `"II"` 线性表出, 则 `r_"I" le
		r_"II"`;
	</li>
	<li>若 `"I"` 与 `"II"` 等价, 则 `r_"I" = r_"II"`;</li>
	<li>若 `"I"` 与 `"II"` 有包含关系, 则 2. 是充要的.</li>
</ol>

<ol class="theorem" id="the-max-number-of-independent-vectors">
	设向量组 `"I": bm alpha_1, bm alpha_2, cdots, bm alpha_r in S`
	线性无关, 则以下三款等价:
	<li>`"I"` 为 `S` 的极大无关组;</li>
	<li>`S` 中有一极大无关组含 `r` 个向量.</li>
	<li>`"I"` 为 `S` 的<b>最大无关组</b>, 即 `S`
		中任意无关向量组所含向量的个数最多为 `r`.
	</li>
	于是由<a class="ref"
		href="#cor-maximal-linear-independent-group-property"></a>,
	秩是无关向量组所含向量个数的最大值,
	是生成向量组所含向量个数的最小值.
</ol>

<ol class="proof">
	<li>`rArr` 2. 显然.</li>
	<li>`rArr` 3. 设 `"III"` 为 `S` 的含 `r` 个向量的极大无关组.
		这说明 `S` 中无关向量组所含向量的个数可以达到 `r`.
		设 `S` 中有 `r+1` 个线性无关的向量, 则这些向量可被
		`"III"` 线性表出, 由替换定理, `r+1 le r`, 矛盾. 所以 `S`
		中无关向量组所含向量的个数不超过 `r`.
	</li>
	<li>`rArr` 1.
		设 `S` 中无关向量组所含向量的个数最多为 `r`, 则 `S`
		中的任意向量与 `"I"` 组成的向量组都线性相关.
		由<a class="ref" href="#lem-add-vector"></a>, `S`
		中任意向量都能被 `"I"` 线性表出, 即 `"I"` 为 `S` 的极大无关组.
	</li>
	2. `rArr` 1. 的另一种证法是, 设 `"III"` 为 `S` 的含 `r`
	个向量的极大无关组, 利用替换定理的结论 2,
	向量组 `"I"` 与 `"III"` 等价. 从而 `"I"` 能表出 `"III"`, 进而能表出
	`S` 中的任意向量.
</ol>

<p class="remark">
	定理告诉我们, 极大无关组就是最大无关组,
	从而给出一个极大无关组的等价定义.
	这一定理得出的关于秩的结论是非常对称而优美的.
</p>

<h3>线性方程组的可解性 (向量组语言)</h3>

<p>	从<a class="ref" href="#cor-linear-dependent-and-equations"></a>
	早已知道, `n` 元向量的线性相关性与方程组解的存在性问题密不可分.
	现在利用已经得到的向量线性相关性的结论,
	回过头来解决方程组解的存在性问题, 即下面的定理:
</p>

<p class="theorem" id="the-has-solution-iff">
	设 `bm alpha_1, bm alpha_2, bm alpha_n, bm beta in bbb P^m`,
	则线性方程组
	<span class="formula">
		`sum_(i=1)^n x_i bm alpha_i = bm beta`
	</span>
	有解当且仅当
	<span class="formula">
		` r_({bm alpha_1, cdots, bm alpha_n})
		= r_({bm alpha_1, cdots, bm alpha_n, bm beta})`.
		<span class="label" id="for-has-solution-iff">(3-1)</span>
	</span>
	进一步, 当此方程组有解时, 其解唯一当且仅当 `bm alpha_1, bm alpha_2,
	cdots, bm alpha_n` 线性无关, 即
	<span class="formula">
		` r_({bm alpha_1, cdots, bm alpha_n})
		= r_({bm alpha_1, cdots, bm alpha_n, bm beta}) = n`.
	</span>
</p>

<ol class="proof">
	<li>由<a class="ref" href="#cor-rank-and-equality"></a>
		的 3, <a class="ref" href="#for-has-solution-iff"></a>
		成立当且仅当 `bm alpha_1, bm alpha_2,
		cdots, bm alpha_n` 等价于 `bm alpha_1, bm alpha_2, cdots, bm
		alpha_n, bm beta`,
		也当且仅当 `bm beta` 为 `bm alpha_1, bm alpha_2, cdots,
		bm alpha_n` 的线性组合;
		由<a class="ref" href="#cor-linear-dependent-and-equations"></a>
		的 1, 这当且仅当方程组有解.
	</li>
	<li>进一步设方程组有解,
		由<a class="ref" href="#the-uniqueness-of-linear-presentation">
		</a> 知解唯一当且仅当 `bm alpha_1, bm alpha_2, cdots, bm alpha_n`
		线性无关.
	</li>
</ol>

<h2>矩阵的秩与方程组的求解问题</h2>

<h3>矩阵的秩</h3>

<p class="definition">
	设 `bm A in bbb P^(m xx n)`, 把 `bm A` 的某 `r` 行某 `s` 列交叉处的
	`r xx s` 个元素按原来 "上下左右" 的顺序形成的 `r xx s` 矩阵称为
	`bm A` 的<b>子阵</b>, `r = 1, 2, cdots, m`, `s = 1, 2, cdots, n`.
	特别 `r = s` 时, 称为 <b>`r` 阶子阵</b>,
	其行列式称为 `bm A` 的 <b>`r` 阶子式</b>,
	`r = 1, 2, cdots, min{m, n}`.
</p>

<p class="definition">
	称 `bm A in bbb P^(m xx n)` 的列向量组 `{bm (A epsi)_j}_(j=1)^n`
	的秩为 `bm A` 的<b>列秩</b>, 行向量组 `{bm epsi_i' bm A)}_(i=1)^m`
	的秩为 `bm A` 的<b>行秩</b>, 称 `bm A` 的全体非零子式的最大阶数为
	`bm A` 的<b>行列式秩</b>. 规定零矩阵的行列式秩为 `0`.
	因此, `bm A` 的行秩, 列秩和行列式秩都是非负整数.
</p>

<div class="definition">
	令 `bm alpha_1, bm alpha_2, cdots, bm alpha_n in bbb P^m`.
	定义向量组<b>涉及向量的初等变换</b>与<b>涉及分量的初等变换</b>如下:
<table>
<tr>
<td>
<ol>涉及向量的初等变换
	<li>`c` 乘以向量组的第 `i` 个向量作为新向量组的第 `i` 个向量,
		其他向量不变, `c in bbb P\\{0}`, `1 le i le n`.
	</li>
	<li>向量组的第 `j` 个向量加上第 `i` 个向量的 `k` 倍, 作为新向量组的第
		`j` 个向量, 其他向量不变, `k in bbb P`, `1 le i != j le n`.
	</li>
	<li>交换向量组的第 `i, j` 个向量的位置, 其他向量不变,
		`1 le i != j le n`.
	</li>
</ol>
</td>

<td>
<ol>涉及分量的初等变换
	<li>`c` 乘以向量组的每个向量的第 `i` 个分量作为新向量组每个向量的第
		`i` 个分量, 其他分量不变, `c in bbb P\\{0}`, `1 le i le m`.
	</li>
	<li>向量组的每个向量的第 `j` 个分量加上各自的第 `i` 个分量的 `k` 倍,
		作为新向量组每个向量的的第 `j` 个分量, 其他分量不变, `k in bbb P`,
		`1 le i != j le m`.
	</li>
	<li>交换向量组的每个向量的第 `i, j` 个分量的位置, 其他分量不变,
		`1 le i != j le m`.
	</li>
</ol>
</td>
</tr>
</table>

</div>

<p class="lemma">
	有限次初等变换不改变向量组的秩.
</p>

<ol class="proof">
	<li>涉及向量的初等变换:
		因为涉及向量的初等变换是可逆的,
		从而变换前后的向量组等价, 从而由<a class="ref"
			href="#cor-rank-and-equality"></a> 的 2, 它们的秩也相等.
	</li>
	<li>涉及分量的初等变换:
		不妨设原向量组 `{bm alpha_i}_(i=1)^n` 不全为零向量, 且
		`{bm alpha_i}_(i=1)^r` 构成它的一个极大线性无关组. 设
		<span class="formula">
			`bm alpha_i = (a_(1i), a_(2i), cdots, a_(mi))'`,
			`bm beta_i = (b_(1i), b_(2i), cdots, b_(mi))'`,
			`i = 1, 2, cdots, r`.
		</span>
		构造线性方程组
		<span class="formula">
			`sum_(i=1)^r x_i bm alpha_i = bm theta_(m xx 1)`, `quad`
			`sum_(i=1)^r x_i bm beta_i  = bm theta_(m xx 1)`.
		</span>
		由 `{bm alpha_i}_(i=1)^r` 线性无关知, 第一个方程组只有零解.
		而第二个方程可以看成第一个方程经过有限次行初等变换得到的同解方程组,
		从而也只有零解, 即 `{bm beta_i}_(i=1)^r` 线性无关.
		这就证明了原向量组的任一极大无关组在 (涉及分量的)
		初等变换下仍保持线性无关. 由<a class="ref"
			href="#the-max-number-of-independent-vectors"></a>
		`r_({bm alpha_i}_(i=1)^n) = r le r_({bm beta_i}_(i=1)^n)`.
		但涉及分量的初等变换也是可逆的, 类似可得
		`r_({bm alpha_i}_(i=1)^n) ge r_({bm beta_i}_(i=1)^n)`.
	</li>
</ol>

<p class="definition">
	任意 `bm A in bbb P^(m xx n)` 的行秩 = 列秩 = 行列式秩,
	简单地称这个数字为 `bm A` 的<b>秩</b>, 记作 `r_(bm A)`.
</p>

<ol class="proof">
<li>
	先证任意矩阵的行秩等于列秩. 设
	<span class="formula">
		` bm A
		= [bm alpha_1, bm alpha_2, cdots, bm alpha_n]`
		`= [bm alpha^((1)); bm alpha^((2)); vdots; bm alpha^((m))]`.
	</span>
	它有如下等价标准形:
	<span class="formula">
		` bm overset ~ A
		= [bm eta_1, bm eta_2, cdots, bm eta_n]`
		`= [bm eta^((1)); bm eta^((2)); vdots; bm eta^((m))]`
		`= [bm E_r, bm O; bm O, bm O]`,
	</span>
	即对列向量组 `{bm alpha_i}_(i=1)^n`
	作有限次向量组的涉及向量的初等变换和涉及分量的初等变换后可得向量组
	`{bm eta_i}_(i=1)^n`; 类似地, 对行向量组 `{bm alpha^((j))}_(j=1)^m`
	作有限次向量组的涉及向量的初等变换和涉及分量的初等变换后可得向量组
	`{bm eta^((j))}_(j=1)^m`. 显然 `bm overset ~ A` 的行秩和列秩都是 `r`.
	但有限次初等变换不改变向量组的秩, 所以 `bm A` 的行秩和列秩也都是 `r`.
</li>
<li>
	下证 `bm A` 的行列式秩也是 `r`. 不妨设 `bm A != bm O`, 取它的 `r`
	个线性无关的行, 按原顺序作成一个子阵, 记为 `bm A_(r xx n)`. 由 1,
	`bm A_(r xx n)` 的列秩等于行秩等于 `r`. 任取 `bm A_(r xx n)` 的
	`r` 个线性无关的列, 按原顺序作成一个子阵 `bm A_(r xx r)`, 它也是
	`bm A` 的子阵.<br/>
	由 `bm A_(r xx r)` 的列向量线性无关知,
	`|bm A_(r xx r)| != 0`, 为 `bm A` 的一个非零 `r` 阶子式.<br/>
	由于 `bm A` 的任 `r+1` 列都线性相关, 从而其缩短向量 (降维) 仍线性相关,
	因此若 `bm A` 有 `r+1` 阶子式, 其必为零. 于是 `bm A` 的行列式秩为 `r`.
</li>
</ol>

<p class="corollary">
	有限次初等变换不改变矩阵的秩.
</p>

<p class="corollary">
	两个矩阵等价当且仅当它们是具有同样行, 列数的同秩矩阵.
</p>

<p class="corollary">
	由于可逆矩阵可以写为有限个初等矩阵的乘积, 所以任一矩阵乘以可逆矩阵后,
	秩不变.
</p>

<p class="definition">
	称方阵 `bm A in bbb P^(n xx n)` <b>满秩</b>, 如果 `r_(bm A) = n`.
</p>

<p class="remark">
	设 `bm A in bbb P^(n xx n)`, 则
	`bm A` 满秩 `iff bm A` 非奇异 (即行列式非零)
	`iff` 齐次方程组 `bm (AX) = bb 0` 只有零解
	`iff bm A` 可逆.
</p>

<p class="example">
	<b>阶梯形矩阵</b>
	<span class="formula">
		` bm A
		= [**,a_12,a_13, cdots, a_(1r), cdots, a_(1n);
		   0,**,   a_12, cdots, a_(2r), cdots, a_(2n);
		   0,0,   **,    cdots, a_(3r), cdots, a_(3n);
		   vdots, vdots, vdots, , vdots, , vdots;
		   0,0,   0,    cdots, **,      cdots, a_(rn);
		   0,0, 0, cdots, 0, cdots, 0;
		   vdots, vdots, vdots, , vdots, , vdots;
		   0,0, 0, cdots, 0, cdots, 0]`
	</span>
	的秩为 `r`, 其中 `**` 为非零数.
</p>

<p class="example">
	利用初等变换计算
	<span class="formula">
		`[4,-2,1;
		  1,2,-2;
		  -1,8,-7;
		  2,14,-13]`
	</span>
	的秩.
</p>

<p class="solution">
	作行初等变换:
	<span class="formula">
		`[4,-2,1;
		  1,2,-2;
		  -1,8,-7;
		  2,14,-13]`
		`overset([1, 2]) rarr`
		`[1,2,-2;
		  4,-2,1;
		  -1,8,-7;
		  2,14,-13]`
		`underset([3+1(1)][4-1(2)]) overset([2-1(4)]) rarr`
		`[1,2,-2;
		  0,-10,9;
		  0,10,-9;
		  0,10,-9]`
		`underset([4+2(1)]) overset([3+2(1)]) rarr`
		`[1,2,-2;
		  0,-10,9;
		  0,0,0;
		  0,0,0]`.
	</span>
	由上例知原矩阵的秩为 2.
</p>

<p class="example">
	<b>低秩矩阵</b>
	方阵 `bm A in bbb P^(n xx n)` 的秩 `le 1` 当且仅当存在 `bm alpha, bm
	beta in bbb P^(n xx 1)`, 使得
	<span class="formula">
		`bm A = bm (alpha beta)'`.
	</span>
	此时记 `k = bm beta' bm alpha`, 则 `bm A^2 = k bm A`.
	可见低秩矩阵的幂运算是容易进行的.
</p>

<ol class="example">
	<b>若干秩不等式</b>
	假设下面各式中的加法与乘法都可以进行, 即矩阵具有合适的行, 列数:
	<li>`max{r_(bm A),r_(bm B)} le r_((bm A,bm B))
		le r_(bm A) + r_(bm B)`;
	</li>
	<li>`r_(bm A+-bm B) le r_(bm A) + r_(bm B)`;</li>
	<li>`r_(bm(A B)) le min{r_(bm A), r_(bm B)}`;</li>
    <li>(Sylvester) 任意 `{:bm A:}_(m xx n)`, `{:bm B:}_(n xx s)` 满足
		`r_(bm A) + r_(bm B) le n + r_(bm(A B))`,
	</li>
</ol>

<ol class="proof">
	<li>分别记 `bm A, bm B, (bm A,bm B)` 这三个矩阵的列向量组为
		`"I", "II", "III"`. 因为 `"I", "II"` 都能由 `"III"` 线性表出, 所以
		`max{r_"I",r_"II"} le r_"III"`. 另一方面, 记 `"IV"` 为 `"I", "II"`
		中的极大线性无关组之并, 则 `r_"IV" le r_"I" + r_"II"`.
		但 `"III"` 和 `"IV"` 能相互表出, 从而 `r_"III" = r_"IV"`.
		综上即得到结论.
	</li>
	<li>分别记 `bm A, bm B, bm(A+B)` 这三个矩阵的列向量组为
		`"I", "II", "III"`. 又记 `"IV"` 为 `"I", "II"`
		中的极大线性无关组之并, 则 `r_"IV" le r_"I" + r_"II"`.
		但 `"IV"` 能线性表出 `"III"`, 有 `r_"III" le r_"IV"`,
		综上即得到结论.
	</li>
	<li>`bm (A B)` 的各列向量可由 `bm A` 的各列向量线性表出,
		所以 `r_(bm(A B)) le r_(bm A)`;
		`bm (A B)` 的各行向量可由 `bm B` 的各行向量线性表出,
		所以 `r_(bm(A B)) le r_(bm B)`.
	</li>
	<li>考察矩阵
		<span class="formula">
			`bm C = [bm E_n,bm B; bm A,bm O]`,
			`quad bm P = [bm E_n,bm O; -bm A,bm E_m]`,
			`quad bm Q = [bm E_n,-bm B; bm O,bm E_s]`,
		</span>
		计算知
		<span class="formula">
			`bm(P C Q) = [bm E_n,bm O; bm O,-bm(A B)]`.
		</span>
		由于 `|bm P| = |bm Q| = 1`, 故 `bm P, bm Q` 均可逆, 所以
		<span class="formula">
			`r_(bm C) = r_(bm(P C Q)) = r_(bm E_n) + r_(-bm(A B))`
			`= n + r_(bm(A B)`.
		</span>
		通过初等变换可以发现, 在矩阵 `bm C` 中,
		`bm A`, `bm B` 各自的列极大线性无关组所在的列线性无关,
		故 `r_(bm A) + r_(bm B) le r_(bm C)`, 证毕.
	</li>
	<li>现在运用线性方程组理论 (本章最后一节),
		对 Sylvester 秩不等式的特例: `bm(A B) = bm O` 时,
		`r_(bm A) + r_(bm B) le n` 给出另一证明. 因为 `bm(A B) = bm O`,
		`bm B` 的每一列均为方程组 `bm(A X) = bb 0` 的解. 当 `r_(bm A) = n`
		时, 该方程组只有零解, 所以 `bm B = bm O`, `r_(bm B) = 0`,
		不等式成立. <br/>
		当 `r_(bm A) lt n` 时, 该方程组具有 `n-r_(bm A)`
		个向量组成的基础解系, 即 `bm B`
		的每一列均能由这一基础解系线性表出. 于是 `r_(bm B) le n-r_(bm A)`,
		不等式成立.
	</li>
</ol>

<p class="example">
	`bm A in bbb P^(r xx r)`, `bm B in bbb P^(r xx n)`,
	`r_(bm B) = r`, 则
	<span class="formula">
		`bm(A B) = bm O rArr bm A = bm O`,<br/>
		`bm(A B) = bm B rArr bm A = bm E`.
	</span>
</p>

<p class="proof">
	若 `bm(A B) = bm O`, 由 Sylvester 秩不等式立即有 `r_(bm A) + r_(bm B)
	le r`, 但 `r_(bm B) = r`, 故 `r_(bm A) le 0`, 即 `bm A = bm O`.<br/>
	若 `bm(A B) = bm B`, 令 `bm B_1` 为 `bm B` 中线性无关的 `r`
	列组成的方阵, 于是 `bm B_1` 可逆, 且 `bm(A B_1) = bm B_1`.
	两边同时右乘 `bm B_1^-1` 得 `bm A = bm E`.
</p>

<p class="example">
	<b>矩阵的秩因子分解 (rank factorization)</b>
	令 `bm A in bbb P^(m xx n)`,
	`r_(bm A) = r`, 则存在 `bm B in bbb P^(m xx r)`, `bm C in bbb
	P^(r xx n)` 使得 `r_(bm B) = r_(bm C) = r`,
	`bm A = bm(B C)`.
</p>

<p class="proof">
	`r = 0` 时, `bm A = bm O`, 取 `bm B, bm C` 为零矩阵即可. 下设 `r gt
	0`. 记 `bm A = (bm alpha_1, bm alpha_2, cdots, bm alpha_n)`.
	不妨设 `bm A` 的前 `r` 列线性无关, 则后 `n-r` 列可以被前 `r`
	列线性表出:
	<span class="formula">
		`bm alpha_(r+j) = sum_(i=1)^r c_(i j) bm alpha_i`,
		`quad j = 1,2,cdots,n-r`.
	</span>
	将 `bm A` 的前 `r` 列组成的矩阵记为 `bm B`, 又记
	<span class="formula">
		`bm C_1 = (c_(i j))_(r xx (n-r))`,
		`quad bm C = (bm E_r, bm C_1)`,
	</span>
	可以验证 `r_(bm B) = r_(bm C) = r`, 且 `bm A = bm(B C)`.
</p>

<ol class="example">
	<b>伴随矩阵的秩</b>
	设 `bm A` 是阶数 `ge 2` 的方阵, `bm A^**` 是它的伴随矩阵, 则
	<span class="formula">
		`r_(bm A^**) = {
			n, if r_(bm A) = n;
			1, if r_(bm A) = n-1;
			0, if r_(bm A) lt n-1;
		:}`
	</span>
	从而 `bm A` 不可逆时, `bm A^**` 也不可逆.
</ol>

<ol class="proof">
	<li>由方阵逆的结构公式 `bm A^-1 = (bm A^**)/|bm A|`,
		`bm A` 可逆时, `bm A^**` 也可逆.
		因此 `r_(bm A) = n` 时, `r_(bm A^**) = n`.
	</li>
	<li>由 `r_(bm A) = n-1` 知存在 `bm A` 的一个非零 `n-1` 阶子式,
		故 `bm A^** != bm O`, `r_(bm A^**) ge 1`.
		另一方面, 由 `bm(A A^**) = |bm A|bm E = bm O`,
		由 Sylvester 秩不等式,
		`r_(bm A) + r_(bm A^**) le n`, 即 `r_(bm A^**) le 1`,
		所以 `r_(bm A^**) = 1`.
	</li>
	<li>`r_(bm A) lt n-1` 蕴含 `bm A` 的任一 `n-1` 阶子式为零, 从而
		`bm A^** = bm O`, `r_(bm A^**) = 0`.
	</li>
</ol>

<h3>线性方程组的可解性 (矩阵语言)</h3>

<p>	回到线性方程组理论的主线上, 将上节<a class="ref"
	href="#the-has-solution-iff"></a> 的结论用矩阵秩的语言叙述如下:
</p>

<p class="theorem">
	设 `bm A in bbb P^(m xx n)`, `bm B in bbb P^m`.
	则方程组
	<span class="formula">
		`bm (AX) = bm B`
	</span>
	有解当且仅当
	<span class="formula">
		`r_(bm A) = r_((bm A","bm B))`,
	</span>
	其中分块矩阵 `(bm A, bm B)` 表示方程组的增广矩阵. 进一步,
	当此方程组有解时, 其解唯一当且仅当
	<span class="formula">
		`r_(bm A) = r_((bm A","bm B)) = n`.
	</span>
</p>

<p class="example">
	判断下列线性方程组的可解性.
	<span class="formula">`{
		x_1 + 2x_2 + 3x_3 + x_4 = 1;
		x_1 + 4x_2 + 5x_3 + 2x_4 = 2;
		2x_1 + 9x_2 + 8x_3 + 3x_4 = 7;
		3x_1 + 7x_2 + 7x_3 + 2x_4 = 12;
		5x_1 + 7x_2 + 9x_3 + 2x_4 = 20;
	:}`
	</span>
</p>

<p class="solution">
	只作行初等变换, 同时求出上面方程组系数矩阵与增广矩阵的秩.
	<span class="formula">
		`[1,2,3,1,1;
		  1,4,5,2,2;
		  2,9,8,3,7;
		  3,7,7,2,12;
		  5,7,9,2,20]`
		`underset([4-1(3)][5-1(5)]) overset([3-2(2)][2-1(1)]) rarr`
		`[1,2,3,1,1;
		  0,2,2,1,1;
		  0,1,-2,-1,3;
		  0,1,-2,-1,9;
		  0,-3,-6,-3,15]`
		`underset([4-2(1)][5+2(3)]) overset([2","3][3-2(2)]) rarr`
		`[1,2,3,1,1;
		  0,1,-2,-1,3;
		  0,0,6,3,-5;
		  0,0,0,0,6;
		  0,0,-12,-6,24]`
		`underset([5-4(14/6)]) overset([5+3(2)]) rarr`
		`[1,2,3,1,1;
		  0,1,-2,-1,3;
		  0,0,6,3,-5;
		  0,0,0,0,6;
		  0,0,0,0,0]`.
	</span>
	最后的矩阵是增广矩阵在初等变换后的形状,
	其中前四列构成系数矩阵在初等变换后的形状.
	可见系数矩阵的秩为 3, 而增广矩阵的秩为 4, 方程组无解.
	当然, 只要不涉及最后一列, 对矩阵作列的初等变换也是允许的.
</p>

<h2>线性方程组的解的结构</h2>

<p>	本节中假定 `bm A in bbb P^(m xx n)`, `bm X in bbb P^n`, `bm
	B in bbb P^m`, `bb 0` 是 `m` 元零向量.
	我们的讨论对象是<b>非齐次线性方程组</b>
	<span class="formula">
		`bm (AX) = bm B`
		<span class="label" id="for-non-homogeneous">(3-2)</span>
	</span>
	与<b>齐次线性方程组</b>
	<span class="formula">
		`bm (AX) = bb 0`.
		<span class="label" id="for-homogeneous">(3-3)</span>
	</span>
	后者称为前者的<b>导出线性方程组</b>.
</p>

<h3>齐次线性方程组</h3>

<p class="corollary">
	齐次线性方程组 <a class="ref" href="#for-homogeneous"></a>
	总是有解的, `n` 元零向量就是一个解;
	此推论也可由增广矩阵 `(bm A, bb 0)`
	总与其系数矩阵 `bm A` 同秩这一事实得到.
</p>

<p class="corollary">
	<b>线性叠加原理</b>
	设 `bm X_1, bm X_2, cdots, bm X_s` 是齐次线性方程组 <a class="ref"
		href="#for-homogeneous"></a> 的解, 则它们的任意线性组合也是 <a
		class="ref" href="#for-homogeneous"></a> 的解, 这是因为
	<span class="formula">
		` bm A(sum_(i=1)^s k_i bm X_i)
		= sum_(i=1)^s k_i (bm (AX_i))
		= bb 0`.
	</span>
	因此, 若齐次线性方程组有非零解, 它就有无穷多个解.
</p>

<p class="remark">
	女装只有 `0` 次或 `oo` 次.
</p>

<p>	下面的引理给出构造同解线性方程组的一种方法.</p>

<p class="lemma" id="lem-equations-of-same-solution">
	若非齐次线性方程组 <a class="ref" href="#for-non-homogeneous"></a>
	有解, 且 `bm A` 的前 `r` 行构成 `bm A` 的行向量组的一个极大无关组,
	则 <a class="ref" href="#for-non-homogeneous"></a> 与自己的前 `r` 行
	<span class="formula">
		`bm A_(r xx n) bm X = bm B_(r xx 1)`
	</span>
	同解. 一般地, 从 `bm A` 的行向量组中选出一个极大无关组,
	它们所在的行组成的新方程组与原方程组同解.
</p>

<p class="proof">
	因为 `bm A` 的前 `r` 行线性无关,
	由<a class="ref" href="#cor-linear-dependence-on-variation"></a> 的 2,
	增广矩阵 `(bm A, bm B)` 的前 `r` 行也线性无关.
	又方程组 `bm (AX) = bm B` 有解, `r = r_(bm A) = r_((bm A","bm B))`.
	因此由<a class="ref" href="#the-max-number-of-independent-vectors">
	</a>, `(bm A, bm B)` 的前 `r` 行构成其行向量组的极大无关组,
	从而 `(bm A, bm B)` 的后 `m-r` 行是前 `r` 行的线性组合.
	对增广矩阵施行有限次第二类行初等变换, 就可将它的后 `m-r` 行化为零,
	从而这一变换后的方程组 (本质上, 即 `bm A_(r xx n) bm X = bm B_(r xx
	1)`) 与原方程组同解.
</p>

<p class="theorem">
	齐次线性方程组 <a class="ref" href="#for-homogeneous"></a> 中,
	记 `r_(bm A) = r`.  令 `bm A` 左上角的 `r` 阶子式非零,
	`bm A_(r xx n)` 是 `bm A` 的前 `r` 行组成的矩阵, 若 `r lt n`,
	将 `bm A_(r xx n)` 与 `bm X` 分块为
	<span class="formula">
		`bm A_(r xx n) = (bm A_1^(r xx r), bm A_2^(r xx (n-r)))`, `quad`
		`bm X = [bm X_1^(r xx 1); bm X_2^((n-r) xx 1)]`,
	</span>
	则 <a class="ref" href="#for-homogeneous"></a> 同解于
	<span class="formula">
		` bm X = [-bm A_1^-1 bm A_2; bm E_(n-r)] bm X_2`.
		<span class="label" id="for-homogeneous-equals">(3-4)</span>
	</span>
	任给定 `bm X_2 in bbb P^(n-r)`, 上式就确定 `bm X in bbb P^n`
	的一个对应值, 因此上式实际上确定了一个 `bbb P^(n-r) to bbb P^n`
	的显函数, 它由原方程组 `bm (AX) = bb 0` 蕴含的隐函数关系显化得到.
</p>

<p class="proof">
	由引理, <a class="ref" href="#for-homogeneous"></a> 与
	<span class="formula">
		`bm A_(r xx n) bm X = bb 0_(r xx 1)`
	</span>
	同解.
	把 `bb 0_(r xx 1)` 仍记为 `bb 0`, 上式改写为
	<span class="formula">
		`bm A_1 bm X_1 + bm A_2 bm X_2 = bb 0`,
	</span>
	即 (在线性规划理论中, 这一步骤称为用非基变量表出基变量)
	<span class="formula">
		`bm A_1 bm X_1 = -bm A_2 bm X_2`.
	</span>
	由假设 `|bm A_1| != 0`, 从而同解于
	<span class="formula">
		`bm X_1 = -bm A_1^-1 bm A_2 bm X_2`
	</span>
	由于 `bm X_2 = bm E_(n-r) bm X_2` 恒成立, 上式又同解于
	<span class="formula">
		` bm X
		= [bm X_1; bm X_2]
		= [-bm A_1^-1 bm A_2; bm E_(n-r)] bm X_2`.
	</span>
	即 <a class="ref" href="#for-homogeneous-equals"></a>.
</p>

<p class="remark">
	在 <a class="ref" href="#for-homogeneous-equals"></a> 中特别取
	`bm X_2 != bb 0`, 则 `bm X != bb 0`. 这说明 `r lt n`
	时, <a class="ref" href="#for-homogeneous"></a> 有非零解.
	这一结论与<a class="ref" href="#cor-linear-dependent-and-equations">
	</a> 的 2 相符.
</p>

<p class="definition">
	若齐次线性方程组 <a class="ref" href="#for-homogeneous"></a> 有非零解,
	其非零解 `bm X_1, bm X_2, cdots, bm X_s`
	构成其解集的极大线性无关组, 则称 `bm X_1, bm X_2, cdots, bm X_s`
	为 <a class="ref" href="#for-homogeneous"></a> 的一个<b>基础解系</b>,
	它们中的每一个称为<b>基础解</b>或<b>基解</b>.
</p>

<p class="corollary">
	设齐次线性方程组 <a class="ref" href="#for-homogeneous"></a>
	的基础解系存在, 则它不唯一. 事实上设

		`bm X_1, bm X_2, cdots, bm X_s`

	是 <a class="ref" href="#for-homogeneous"></a> 的一个基础解系,
	则由线性叠加原理,
	<span class="formula">
		`bm X_1, bm X_1 + bm X_2, cdots, sum_(i=1)^s bm X_i`
	</span>
	是 <a class="ref" href="#for-homogeneous"></a>
	的非零解, 且容易证明是线性无关的.
</p>

<p class="theorem" id="the-structure-of-solution">
	令齐次线性方程组 <a class="ref" href="#for-homogeneous"></a>
	系数矩阵的秩 `r_(bm A) = r`.
	若 `r lt n`, 则 <a class="ref" href="#for-homogeneous"></a>
	具有由 `n-r` 个基解 `bm X_1, bm X_2, cdots, bm X_(n-r)`
	组成的基础解系. 于是 <a class="ref" href="#for-homogeneous"></a>
	的解集 `S_0` 可以表为
	<span class="formula">
		`S_0 = {sum_(i=1)^(n-r) k_i bm X_i: k_i in bbb P, i = 1, 2, cdots,
		n-r}`.
	</span>
	`sum_(i=1)^(n-r) k_i bm X_i`
	称为 <a class="ref" href="#for-homogeneous"></a> 的<b>通解</b>.
</p>

<p class="proof">
	我们给出构造性证明.  仍不妨令 `bm A` 左上角的 `r` 阶子式不等于零.
	因为只要调动方程和未知项的顺序就可在等价意义上做到这一点. 由定理3-9,
	<a class="ref" href="#for-homogeneous"></a> 的解由
	<a class="ref" href="#for-homogeneous-equals"></a> 给出.
	在 <a class="ref" href="#for-homogeneous-equals"></a>
	中依次取 `bm X_2 = bm epsi_i`, `i = 1, 2, cdots, n-r`, 把得到的解记为
	<span class="formula">
		`bm gamma_i = [-bm A_1^-1 bm A_2; bm E_(n-r)] bm epsi_i
		= bm (C epsi_i)`,
		`i = 1, 2, cdots, n-r`
	</span>
	则 `bm gamma_i` 为 <a class="ref" href="#for-homogeneous-equals"></a>
	中系数矩阵 `bm C` 的第 `i` 列,
	<a class="ref" href="#for-homogeneous-equals"></a> 可改写为
	<span class="formula">
		`bm X = sum_(i=1)^(n-r) x_(r+i) bm gamma_i`.
	</span>
	即 <a class="ref" href="#for-homogeneous"></a> 的每个解都是
	`{bm gamma_i}_(i=1)^(n-r)` 的线性组合.
	又 `bm C` 的子式 `|bm E_(n-r)| != 0`, 于是 `r_(bm C) = n-r`,
	`{bm gamma_i}_(i=1)^(n-r)` 线性无关, 它们构成
	<a class="ref" href="#for-homogeneous"></a> 的一个基础解系.
</p>

<p class="remark">
  用线性空间的观点, 齐次线性方程组 `bm(A X) = bb 0`
  的解集构成线性空间 `"Ker"bm A`, 基础解系是该空间的基.
</p>

<h3>非齐次线性方程组</h3>

<p class="theorem">
	设非齐次线性方程组 <a class="ref" href="#for-non-homogeneous"></a>
	有解, 解集为 `S != O/`, 记齐次线性方程组
	<a class="ref" href="#for-homogeneous"></a>
	的解集为 `S_0`, 取 `bm X_0 in S` , 称为
	<a class="ref" href="#for-non-homogeneous"></a> 的一个<b>特解</b>. 则
	<span class="formula">
		`S = bm X_0 + S_0 := {bm X_0 + bm Y: bm Y in S_0}`.
	</span>
	由定理知道, 要找出非齐次线性方程组的所有解,
	只需知道它的一个特解以及齐次线性方程组的所有解即可.
</p>

<p class="proof">
	由 `bm X_0 in S`, `bm Y in S_0` 知,
	<span class="formula">
		` bm A(bm X_0 + bm Y)
		= bm (AX_0) + bm (AY)
		= bm B + bb 0
		= bm B`,
	</span>
	故 `bm X_0 + bm Y in S`.
	反之令 `bm X in S`, 由
	<span class="formula">
		` bm A(bm X - bm X_0)
		= bm (AX) - bm (AX_0)
		= bm B - bm B
		= bb 0`
	</span>
	知, 存在 `bm Y = bm X - bm X_0 in S_0` 使得
	`bm X = bm X_0 + bm Y`.
</p>

<p class="corollary">
	设非齐次线性方程组 <a class="ref" href="#for-non-homogeneous"></a>
	有解,
	则它有唯一解当且仅当其导出的齐次方程组只有零解.
</p>

<p class="corollary">
	设非齐次线性方程组 <a class="ref" href="#for-homogeneous"></a> 有特解
	`bm X_0`, `bm X_1, bm X_2, cdots, bm X_(n-r)` 为其导出方程组
	<a class="ref" href="#for-homogeneous"></a> 的一个基础解系,
	则 <a class="ref" href="#for-homogeneous"></a> 的解集为
	<span class="formula">
		`{bm X_0 + sum_(i=1)^(n-r) k_i bm X_i: k_i in bbb P, i = 1, 2,
		cdots, n-r}`.
	</span>
</p>

<h3>线性方程组的解法</h3>

<p>	有了上面一段的铺垫, 我们可以对非齐次线性方程组的问题给出圆满解答了.
</p>

<ol class="algorithm">
	<b>解非齐次线性方程组 `bm (AX) = bm B`</b>
	<li>通过行初等变换, 将方程的增广矩阵 `(bm A, bm B)`
		化为阶梯形.
	</li>
	<li>第一步后, 若得出 `r_(bm A) lt r_((bm A","bm B))`, 则方程组无解;
		否则继续将增广矩阵化为<b>行简化阶梯形矩阵</b>,
		即每个非零行的第一个非零元素等于 1,
		且这些 1 所在列的其他元素皆为 0 的阶梯形矩阵.
	</li>
	<li>由<a class="ref" href="#lem-equations-of-same-solution"></a>,
		可以删去增广矩阵的零行, 得到一个 `r` 行的矩阵
		`(bm A_1, bm B_1)_(n xx r)`,
		其中 `r = r_(bm A)`.
		将每行第一个非零元素所在的列的标号依次记为
		`i_1, i_2, cdots, i_r`, 其它各列的标号依次记为
		`i_(r+1), cdots, i_n`.
		将其它各列移到方程右端, 得
		<span class="formula">
			` [x_(i_1); x_(i_2); vdots; x_(i_r)]
			= bm B_1 - sum_(j=r+1)^n x_(i_j) bm A_1
			  bm epsi_(i_j)`,
		</span>
		方程组的解已经显化出来. 取定一组
		`x_(i_(r+1)), cdots, x_n`, 就决定了
		`x_(i_1), x_(i_2), cdots, x_(i_r)` 的值.
	</li>
	<li>记变换矩阵
		<span class="formula">
			`sigma = (bm epsi_(i_1), bm epsi_(i_2), cdots, bm
			epsi_(i_r))`,
			`tau = (bm epsi_(i_(r+1)), cdots, bm epsi_(i_n))`,
		</span>
		则原方程组的一个特解是

			`bm X_0 = sigma bm B_1`,

		基础解系为矩阵

			`(bm E_n - sigma bm A_1) tau`

		的各列.
		实际计算时不必生搬硬套公式, 只需代回原变元,
		然后在必要的地方用 0 或 1 填充即可.
	</li>
</ol>

<div class="playground" type="textarea" value="{ mat: [
  [1, -1, 1, -1, 1],
  [1, -1, -1, 1, 0],
  [1, -1, -2, 2, -0.5]
] }">
<script type="text">
module.exports = function (str) {
  const { mat } = Playground.parse(str)
  return (new Mat(mat)).solve().toString(4)
}
</script>
</div>

<ol class="example">
	在数域 `bbb P` 上解下列方程组:
	<li>
	`{
		5x_1 + 6x_2 - 2x_3 + 7x_4 + 4x_5 = 23;
		2x_1 + 3x_2 - x_3 + 4x_4 + 2x_5 = 12;
		7x_1 + 9x_2 - 3x_3 + 5x_4 + 6x_5 = 23;
		5x_1 + 9x_2 - 3x_3 + x_4 + 6x_5 = 13;
	:}`
	</li>
	<li>
	`{
		x_1 - x_2 + x_3 - x_4 = 1;
		x_1 - x_2 - x_3 + x_4 = 0;
		x_1 - x_2 - 2x_3 + 2x_4 = -1/2;
	:}`
	</li>
</ol>

<ol class="solution">
	<li>对增广矩阵作行初等变换:
		<span class="formula">
		`[
			5,6,-2,7,4,23;
			2,3,-1,4,2,12;
			7,9,-3,5,6,23;
			5,9,-3,1,6,13;
		]`
		`overset([1-2(2)][3-4(1)]) underset([4-2(3)]) to`
		`[
			1,0,0,-1,0,-1;
			2,3,-1,4,2,12;
			2,0,0, 4,0,10;
			-1,0,0,-11,0,-23;
		]`
		`overset([2-1(2)][3-1(2)]) underset([4+1(1)]) to`
		`[
			1,0,0,-1,0,-1;
			0,3,-1,6,2,14;
			0,0,0, 6,0,12;
			0,0,0,-12,0,-24;
		]`
		`overset([2-3(1)][4+3(2)]) underset([2(1/3)][3(1/6)]) to`
		`[
			1,0,0,-1,0,-1;
			0,1,-1/3,0,2/3,2/3;
			0,0,0, 1,0,2;
		]`
		`overset([1+3(1)]) to`
		`[
			1,0,0,0,0,1;
			0,1,-1/3,0,2/3,2/3;
			0,0,0, 1,0,2;
		]`
		</span>
		得
		<span class="formula">
			` [x_1; x_2; x_4]
			= [1; 2/3; 2]
			+ [0; 1/3; 0] x_3
			- [0; 2/3; 0] x_5`.
		</span>
		于是通解为
		<span class="formula">
			`bm X = [1; 2/3 + 1/3 k_1 - 2/3 k_2; k_1; 2; k_2]`,
			`k_1, k_2 in bbb P`.
		</span>
	</li>
	<li>过程略, 通解为
		<span class="formula">
			`bm X = [1/2 + k_1; k_1; 1/2 + k_2; k_2]`.
		</span>
	</li>
</ol>

<p class="example">
	设有 `bbb P^(n xx 1)` 中的线性无关向量组 `"I" = {bm alpha_i}_(i=1)^r`,
	`"II" = {bm beta_i}_(i=1)^s`, `r + s = n`, 则 `"II"` 构成方程组
	<span class="formula">
		`(bm alpha_1,bm alpha_2,cdots,bm alpha_r)' bm X = bb 0`
	</span>
	的基础解系当且仅当
	<span class="formula">
		`bm alpha_i' bm beta_j = 0`,
		`quad i in [r], j in [s]`,
	</span>
	这当且仅当`"I"` 构成方程组
	<span class="formula">
		`(bm beta_1,bm beta_2,cdots,bm beta_s)' bm X = bb 0`
	</span>
	的基础解系.
</p>

<ol class="example">
	设 `bm A in RR^(m xx n)`, `bm X in RR^n`, `bm B, bb 0 in RR^m`, 则
	<li>实线性方程组 `bm (A X) = bb 0` 与 `bm (A'A X) = bb 0` 同解;</li>
	<li>`r_(bm A) = r_(bm(A'A))`;</li>
	<li>实线性方程组 `bm (A'A X) = bm(A'B)` 有解.</li>
	注意在复数域中, 结论 1. 未必成立. 如 `bm A = [1,"i"; "i",-1]`.
</ol>

<ol class="proof">
	<li>显然 `bm (A X) = bb 0` 的解也是 `bm (A'A X) = bb 0` 的解. 反之设
		`bm(A'A X) = bb 0`, 则 `bm(X'A'A X) = 0`, 即 (向量内积)
		<span class="formula">
			`(bm(A X), bm(A X)) = 0`,
		</span>
		这推出 `bm(A X) = bb 0`.
		注意, 从线性变换的角度看, 两个齐次方程组同解, 即
		<span class="formula">
			`"Ker"bm A = "Ker"bm(A'A)`.
		</span>
	</li>
	<li>由<a class="ref" href="#the-structure-of-solution"></a>
		知道, 两个同解齐次方程组的系数矩阵秩相等.
	</li>
	<li>运用几类秩不等式 (并上一列, 秩变大; 乘以一个矩阵, 秩变小):
		<span class="formula">
			`r_(bm(A'A)) le r_((bm(A'A)","bm(A'B)))`
			`= r_(bm A'(bm A,bm B))`
			`le r_(bm A')`
			`= r_(bm A)`
			`= r_(bm(A'A))`.
		</span>
		从而上式取得等号, 特别
		<span class="formula">
			`r_(bm(A'A)) = r_((bm(A'A)","bm(A'B)))`,
		</span>
		即方程组
		<span class="formula">
			`bm(A'A X) = bm(A'B)`
		</span>
		有解.
	</li>
</ol>

<p class="example">
    配平化学方程式
    <span class="formula">
        `x_1 P_4 + x_2 P_2 I_4 + x_3 H_2 O == x_4 P H_4 I + x_5 H_3 P O_4`.
    </span>
</p>

<p class="solution">
    按各个元素列出线性方程组:
    <span class="formula">`{
        P: 4x_1 + 2x_2 - x_4 - x_5 = 0;
        I: 4x_2 - x_4 = 0;
        H: 2x_3 - 4x_4 - 3x_5 = 0;
        O: x_3 - 4x_5 = 0;
    :}`</span>
    设 `x_5 = 1`, 解得
    <span class="formula">
        `(13/32, 5/16, 4, 5/4, 1)`
        `overset(xx32) rarr (13, 10, 128, 40, 32)`.
    </span>
</p>

<script src="../../js/note.js?type=math"></script>
<script src="../../js/playground.js"></script>
<script src="../../code/mat.js"></script>
</body>
</html>
